package com.liukunup;

import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.testng.TestNG;

import java.util.ArrayList;
import java.util.List;
import java.util.Locale;

/**
 * 应用程序入口
 * @author Liu Kun
 * @date 2021-04-03 20:26:05
 **/
@Slf4j
public class Main {

    /**
     * TestNG.xml 配置文件名
     * 如传入参数,则以传入值为准.
     */
    private static final String CFG_TNG_FN = "testng.xml";

    public static void main(String[] args) {
        // 获取 TestNG.xml 形式的配置文件名
        String tngXml = System.getProperty("tng.xml");
        // 如果未传入参数,则使用默认配置
        if (StringUtils.isEmpty(tngXml)) {
            String tngPath = System.getProperty("user.dir");
            tngXml = String.format(Locale.CHINA, "%s/%s", tngPath, CFG_TNG_FN);
        }
        // 设置 TestNG 测试套
        List<String> testSuites = new ArrayList<String>(1);
        testSuites.add(tngXml);
        log.info("Test Suites: {}", testSuites);
        // 执行 TestNG 测试
        TestNG tng = new TestNG();
        tng.setTestSuites(testSuites);
        tng.run();
    }
}